#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
# ../ 当前目录的上一级目录，也就是 base_dir
import sys
sys.path.insert(0, '../')

# 告诉 os 我们的django的配置文件在哪里
import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "meiduo_mall.settings")

# django setup
# 相当于 当前的文件 有了django的环境
import django
django.setup()

"""
详情页面与首页不同
详情页面内容比较少。一般也就是修改商品的价裕
详情页面应该在上线前 统一生成一遍
应该是运营人员修改的时候生成(定时怪务)
"""

from utils.goods import get_categories,get_breadcrumb,get_goods_specs
from apps.contents.models import ContentCategory
from django.template import loader
from meiduo_mall import settings
from apps.goods.models import SKU
import os
import time

def generic_detail_html(sku):
    print('-----------%s：generic_detail_html---------'%time.ctime())
    #try:
    #    sku=SKU.objects.get(id=sku_id)
    #except SKU.DoesNotExist:
    #    return render(request, '404.html')
    # 1.分类数据
    categories=get_categories()
    # 2.面包屑
    breadcrumb=get_breadcrumb(sku.category)
    # 3.SKU信息
    # 4.规格信息
    goods_specs=get_goods_specs(sku)
    context = {
        'categories': categories,
        'breadcrumb': breadcrumb,
        'sku': sku,
        'specs': goods_specs,
    }
    # 1.获取首页模板文件
    detail_template=loader.get_template('detail.html')
    # 2.渲染首页html字符串
    detail_html_data=detail_template.render(context)
    # 3.把渲染好的HTML，写入到指定文件
    print(sku.id)
    file_path=os.path.join(os.path.dirname(settings.BASE_DIR),'front_end_pc/goods/%s.html'%sku.id)
    with open(file_path,'w',encoding='utf-8') as f:
        f.write(detail_html_data)

if __name__=='__main__':
    skus=SKU.objects.all()
    for sku in skus:
        generic_detail_html(sku)

